﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace VIETPHONG
{
    public partial class frmchitiethoadon : Form
    {
        VIETPHONGEntities db = new VIETPHONGEntities();
        public frmchitiethoadon()
        {
            InitializeComponent();
        }

        private void thoátToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void frmchitiethoadon_Load(object sender, EventArgs e)
        {
            dgvchitiet.AutoGenerateColumns = false;
            hienthichitiet();
        }
        private void hienthichitiet()
        {
            var query = from chitiet in db.CHITIETHOADONs
                        select chitiet;
            dgvchitiet.DataSource = query.ToList();            
        }

        private void btnthem_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("Bạn muốn thêm chi tiết này", "Thông báo", MessageBoxButtons.YesNo);
            if(result==DialogResult.Yes)
            { 
            try
            {
                CHITIETHOADON chitiet = new CHITIETHOADON()
                {
                    MAHOADON = txtmahoadon.Text,
                    MASANPHAM = txtmasp.Text,
                    SOLUONG = int.Parse(txtsoluong.Text)
                };
                ChucNang.ThemChiTietHoaDon(chitiet);
                MessageBox.Show("Thêm thành công");
            }
           catch(Exception ex)
            {
                var query = from chitiet in db.CHITIETHOADONs
                            where chitiet.MAHOADON.Equals(txtmahoadon.Text) & chitiet.MASANPHAM.Equals(txtmasp.Text)                            
                            select chitiet;
                if (query.ToList().Count >= 1)
                {
                    MessageBox.Show("Đã có chi tiết này", "Thông báo");
                }
                MessageBox.Show("Thêm không thành công", "Thông báo");
            }
            hienthichitiet();
            }
        }

        private void btncapnhat_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("Bạn muốn cập nhật chi tiết này", "Thông báo", MessageBoxButtons.YesNo);
            if(result==DialogResult.Yes)
            { 
             try
            {
                CHITIETHOADON chitiet = new CHITIETHOADON()
                {
                    MAHOADON = txtmahoadon.Text,
                    MASANPHAM = txtmasp.Text,
                    SOLUONG = int.Parse(txtsoluong.Text)
                };
                ChucNang.CapNhatChiTietHoaDon(chitiet);
                MessageBox.Show("Cập nhật thành công");
            }
            catch(Exception ex)
             {
                 MessageBox.Show("Cập nhật thất bại\n chỉ được cập nhật số lượng", "Thông báo");
             }
             hienthichitiet();
            }
        }

        private void btnxoa_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("Bạn muốn xóa chi tiết này", "Thông báo", MessageBoxButtons.YesNo);
            if (result == DialogResult.Yes)
            {
                try
                {
                    CHITIETHOADON chitiet = new CHITIETHOADON()
                    {
                        MAHOADON = txtmahoadon.Text,
                        MASANPHAM = txtmasp.Text,
                        SOLUONG = int.Parse(txtsoluong.Text)
                    };
                    ChucNang.XoaChiTietHoaDon(chitiet);
                    MessageBox.Show("Xóa thành công");
                }
                catch(Exception ex)
                {
                    MessageBox.Show("Xóa thất bại");
                }
            }
        }

        private void dgvchitiet_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            DataGridViewRow row = new DataGridViewRow();
            row = dgvchitiet.Rows[e.RowIndex];
            txtmahoadon.Text = row.Cells[0].Value.ToString();
            txtmasp.Text = row.Cells[1].Value.ToString();
            txtsoluong.Text = row.Cells[2].Value.ToString();
        }

        private void btntim_Click(object sender, EventArgs e)
        {
            var query = from chitiet in db.CHITIETHOADONs
                        where chitiet.MAHOADON.Equals(txtmahoadon.Text)
                        select chitiet;
            if(query.ToList().Count>=1)
            { 
            dgvchitiet.DataSource = query.ToList();
            }
            else
            {
                MessageBox.Show("Không tìm thấy mã hóa đơn " + txtmahoadon.Text.ToString(), "Thông báo");
            }
        }
        
    }
}
